00001 /* 00002 * Copyright (c) 2013 Battelle Memorial Institute 00003 * Licensed under modified BSD License. A copy of this license can be found 00004 * in the LICENSE file in the top level directory of this distribution. 00005 */ 00006 // ------------------------------------------------------------- 00007 /** 00008 * @file uc_app.hpp 00009 * @author 00010 * @date 00011 * 00012 * @brief 00013 * 00014 * 00015 */ 00016 // ------------------------------------------------------------- 00017 00018 #ifndef _uc_app_h_ 00019 #define _uc_app_h_ 00020 00021 #include "uc_factory.hpp" 00022 00023 namespace gridpack { 00024 namespace unit_commitment { 00025 00026 // Calling program for unit commitment application 00027 00028 class UCApp 00029 // : public gridpack::optimization::VariableVisitor 00030 { 00031 public: 00032 /** 00033 * Basic constructor 00034 */ 00035 UCApp(void); 00036 00037 /** 00038 * Basic destructor 00039 */ 00040 ~UCApp(void); 00041 00042 /** 00043 * Get time series data for loads and reserves and move them to individual 00044 * buses 00045 * @param filename name of file containing load and reserves time series 00046 * data 00047 */ 00048 void getLoadsAndReserves(const char* filename); 00049 00050 /** 00051 * Execute application 00052 * @param argc number of arguments 00053 * @param argv list of character strings 00054 */ 00055 void execute(int argc, char** argv); 00056 00057 00058 private: 00059 00060 boost::shared_ptr<UCNetwork> p_network; 00061 }; 00062 00063 } // unit_commitment 00064 } // gridpack 00065 #endif